<?php
    require_once("config.php");
	require_once("utils.php");
	require_once(ROOT_DIR_CLASES.'/cCliente.php');
	require_once(ROOT_DIR_CLASES.'/Contacto.php');
	require_once 'JSON.php';
	
	class CuentaContacto{
		var $cuenta;
		var $objetivo;
	  	var $label;
		var $observaciones;
	}

	$args = ($_SERVER['REQUEST_METHOD'] == "POST") ? $_POST : $_GET;
	$json = new Services_JSON();
    $res = NULL;
    if (array_key_exists('COMMAND', $args))
	{		
		$cmd = $args['COMMAND'];
    	switch ($cmd) {
			case "CARGAR":
				$res = array();
				$cta = $args['CUENTA'];
				$objetivo = $args['OBJETIVO'];	
				//CARGO CUENTA DE CONTACTO			
				$cuentaContacto = new CuentaContacto(); 
				$datosCuenta = BykomCliente::Consulta_Datos_Contacto_Cuenta_Avl($cta, $objetivo);
				if ($datosCuenta->cantidad() > 0){
					$cuentaContacto->label = $datosCuenta->campo('NOMBRE',0);					
					$cuentaContacto->observaciones = $datosCuenta->campo('OBSERVACIONES',0);
				}
				array_push($res, $cuentaContacto);
				//CARGO CONTACTOS					
				$contactos = array();
           		$datosContacto = BykomCliente::Consulta_Datos_Contacto_Avl($cta, $objetivo);
        		for($i = 0;  $i < $datosContacto->cantidad(); $i++ ) {
					$contacto = new Contacto();
					$contacto->id = $datosContacto->campo('id',$i);
					$contacto->cuentaFk = $datosContacto->campo('cuentaFk',$i);
					$contacto->objetivo = $datosContacto->campo('objetivo',$i);
					$contacto->nomyapel = $datosContacto->campo('nomyapel',$i);
					$contacto->tipodoc = $datosContacto->campo('tipodoc',$i);
					$contacto->nrodoc = $datosContacto->campo('nrodoc',$i);
					$contacto->direccion = $datosContacto->campo('direccion',$i);
					$contacto->telefono1 = $datosContacto->campo('telefono1',$i);
					$contacto->telefono2 = $datosContacto->campo('telefono2',$i);
					$contacto->email = $datosContacto->campo('email',$i);
					$contacto->observaciones = $datosContacto->campo('observaciones',$i);				
        			array_push($contactos, $contacto);
				}
				array_push($res, $contactos);
				break;
			case "PERSISTIR":
				$res = array();
				$contacto = new Contacto();
				$contacto->id = $args['ID'];
				$contacto->cuentaFk = $args['CUENTA'];
				$contacto->objetivo = $args['OBJETIVO'];
				$contacto->nomyapel = $args['NOMYAPEL'];
				$contacto->tipodoc = $args['TIPODOC'];
				$contacto->nrodoc = $args['NRODOC'];
				$contacto->direccion = $args['DIRECCION'];
				$contacto->telefono1 = $args['TELEFONO1'];
				$contacto->telefono2 = $args['TELEFONO2'];
				$contacto->email = $args['EMAIL'];
				$contacto->observaciones = $args['OBSERVACIONES'];
				array_push($res, BykomCliente::PersistirContacto($contacto));					
				break;
			case "ELIMINAR":
				$res = array();		
				$id = $args['ID'];						
				array_push($res, BykomCliente::EliminarContacto($id));					
				break;	
			case "PERSISTIRINFOCUENTA":
				$res = array();		
				$cuentaContacto = new CuentaContacto(); 
				$cuentaContacto->cuenta =  $args['CUENTA'];					
				$cuentaContacto->objetivo = $args['OBJETIVO'];
				$cuentaContacto->observaciones = $args['OBSERVACIONES'];
				$response = BykomCliente::PersistirCuentaContacto($cuentaContacto);
				if ($response->cuenta != -1)					
					array_push($res, $response);				
				break;						
    	}
	}
	
	$response = $json->encode($res);
    header('Content-Type: text/plain');
    echo $response;
?>